Skip to content

feat: drop axios/lodash/dotenv for native fetch, bump to 1.80.0 - #175

Merged
justadev-afk merged 1 commit into
masterfrom
feat/native-fetch-drop-deps-1.80.0
Jun 10, 2026
Merged

feat: drop axios/lodash/dotenv for native fetch, bump to 1.80.0#175
justadev-afk merged 1 commit into
masterfrom
feat/native-fetch-drop-deps-1.80.0

Conversation

@justadev-afk

Copy link
Copy Markdown
Owner

Remove the three runtime dependencies in favor of platform features:

  • axios -> native fetch (new request pipeline in src/base/request.base.ts with an HttpError that mirrors the previous axios error shape, so error handling and rate-limit retries are unchanged). Query params are serialized with URLSearchParams (repeated keys, skipping null/undefined). DataDragon and Seed now use fetch directly.
  • lodash -> native JS (Object.entries-based champion id map, a small camelCase helper, object spreads instead of cloneDeep, direct property access instead of .get/.set).
  • dotenv -> removed auto-loading; the live test uses a shared test/utils/loadEnv.ts helper instead.

Because the client now relies on a global fetch, the minimum supported Node.js version is raised to >= 18 (engines field updated).

Also:

  • Export the error classes from the package barrel (src/index.ts).
  • Refactor README.md to be more visual and clearer.
  • Enrich every example under example/ (comments, logging, error handling), fix stale imports/types and the removed Summoner.getByName usages.
  • Bump version to 1.80.0 and regenerate yarn.lock.

Remove the three runtime dependencies in favor of platform features:

- axios  -> native fetch (new request pipeline in src/base/request.base.ts
  with an HttpError that mirrors the previous axios error shape, so error
  handling and rate-limit retries are unchanged). Query params are serialized
  with URLSearchParams (repeated keys, skipping null/undefined). DataDragon
  and Seed now use fetch directly.
- lodash -> native JS (Object.entries-based champion id map, a small
  camelCase helper, object spreads instead of cloneDeep, direct property
  access instead of _.get/_.set).
- dotenv -> removed auto-loading; the live test uses a shared
  test/utils/loadEnv.ts helper instead.

Because the client now relies on a global fetch, the minimum supported
Node.js version is raised to >= 18 (engines field updated).

Also:
- Export the error classes from the package barrel (src/index.ts).
- Refactor README.md to be more visual and clearer.
- Enrich every example under example/ (comments, logging, error handling),
  fix stale imports/types and the removed Summoner.getByName usages.
- Bump version to 1.80.0 and regenerate yarn.lock.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@justadev-afk
justadev-afk merged commit 54cf2f0 into master Jun 10, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant